const delegate = require('delegates');
//导出对象 proto
module.exports = {
    inspect(){},
    toJSOIN(){},
    throe(){},
    onerror(){}
}

let proto = module.exports;
//也就是操作 context.set 的时候，转发给了 proto.response 对象，也就是 proto 代理了 对 response 和 request 的访问，主要 直接 context.response.set() 太长了，所以说 ctx 也是一个语法糖
delegate(proto, 'response').method('set').method('append').access('message').access('body');

delegate(proto, 'request').method('acceptsLanguages').method('accepts').access('querystring').access('socket');